100 CALL CLEAR :: CALL SCREEN(12)
110 DISPLAY AT(10,6):"TI 99 4A FROGGER " :: DISPLAY AT(12,4):"EXTENDED BASIC REQUIRED"
120 DISPLAY AT(14,6):"JOYSTICKS REQIRED"
130 FOR A=1 TO 800 :: NEXT A
140 DISPLAY AT(16,4):"program  1983  p. pheby"
150 FOR A=1 TO 800 :: NEXT A
160 CALL CLEAR :: DISPLAY AT(1,5):"   INSTRUCTIONS   " :: DISPLAY AT(13,1):"USE JOYSTICK TO CROSS ROAD"
170 DISPLAY AT(15,1):"THEN USE FIRE BUTTON TO HOP LOGS"
180 DISPLAY AT(20,1):"*** AIM FOR REAR OF LOGS ***"
190 DISPLAY AT(22,7):"PRESS ANY KEY" :: CALL KEY(0,K,S) :: IF S=0 THEN 190
200 CALL CLEAR :: CALL SCREEN(12) :: DISPLAY AT(5,4):"PRESS KEY FOR SKILL LEVEL "
210 DISPLAY AT(7,8):"1 TO 4"
220 DISPLAY AT(9,4):"HIGHER NUMBERS GIVE FASTER   TRAFFIC AND LESS FROGS"
230 ACCEPT AT(12,8)SIZE(1)VALIDATE("1234"):SK$ :: SK=VAL(SK$)
240 CALL CLEAR :: CALL SCREEN(2) :: SP=2+SK :: K=SK :: FRG=10-SK
250 CALL CHAR(112,"FFFFFFFFFFFFFFFF",113,"0000000000000000")
260 CALL CHAR(120,"0000000000087F7C7F777F730000000000000000033FFFF7F3FFFF5200000000")
270 CALL CHAR(124,"000000000080FFE7FFBFFF73000000000000E0202030FEE6FF66F65C00000000")
280 CALL CHAR(128,"00000003075527233F070F5F233F0100000000C0E0AAE4C4FCE0F0FAC4FC8000")
290 CALL CHAR(132,"0003075527233F0303030303031F112800C0E0AAE4C4FCC0C0C0C0C0C0F88814")
300 CALL CHAR(136,"0000000002024363000000000000000000000000000080C00000000000000000")
310 CALL CHAR(140,"0000002030383C1E1F0D0F0B00000000000000040C1C3C78E0E0E04000000000")
320 CALL CHAR(95,"00FF00000000FF00")
330 CALL CHAR(96,"000000007077277F")
340 CALL CHAR(97,"7F27777000000000")
350 CALL CHAR(98,"000000000EEEE4FF")
360 CALL CHAR(99,"FFE4EE0E00000000")
370 CALL COLOR(1,2,1,0,6,1,8,8,1,9,8,1,11,6,2)
380 CALL HCHAR(12,1,95,32) :: CALL HCHAR(23,1,95,32)
390 FOR D=3 TO 10 :: CALL HCHAR(D,1,112,32) :: NEXT D
400 FOR A=3 TO 4 :: CALL COLOR(A,16,1) :: NEXT A
410 CALL HCHAR(1,1,113,32) :: CALL HCHAR(2,1,113,32) :: CALL HCHAR(11,1,113,32)
420 FOR Q=2 TO 32 STEP 2 :: CALL HCHAR(17,Q,95) :: NEXT Q
430 DISPLAY AT(1,12):FRG
440 CALL MAGNIFY(3)
450 CALL SPRITE(#1,128,4,178,100)
460 CALL SPRITE(#18,124,11,17,10,0,2*SP,#19,124,11,17,90,0,2*SP)
470 CALL SPRITE(#20,124,11,33,1,0,SP,#21,120,11,49,120,0,3*SP)
480 CALL SPRITE(#10,124,11,33,78,0,SP)
490 CALL SPRITE(#13,120,11,49,90,0,3*SP,#14,124,11,65,168,0,2*SP)
500 CALL SPRITE(#2,99,12,97,150,0,5*SP)
510 CALL SPRITE(#3,99,10,113,100,0,6*SP,#6,99,14,113,50,0,6*SP)
520 CALL SPRITE(#4,99,5,161,20,0,-4*SP,#7,99,12,161,100,0,-4*SP)
530 CALL SPRITE(#5,99,12,145,100,0,-6*SP,#8,99,16,145,50,0,-6*SP)
540 CALL POSITION(#1,H,J) :: IF H<=88 THEN CALL MOTION(#1,0,0) :: CALL LOCATE(#1,81,J) :: GOTO 680
550 CALL JOYST(1,X,Y) :: IF X=0 AND Y=0 THEN CALL PATTERN(#1,128)ELSE CALL PATTERN(#1,132)
560 CALL MOTION(#1,-ABS(Y*4),X*4)
570 CALL COINC(ALL ,G) :: IF G=0 THEN 540 ELSE 580
580 CALL SOUND(100,-5,1) :: CALL MOTION(#1,0,0) :: CALL COLOR(#1,9) :: FOR G=1 TO 200 :: NEXT G
590 FRG=FRG-1 :: DISPLAY AT(1,12):FRG
600 IF FRG=0 THEN 610 ELSE 630
610 CALL DELSPRITE(ALL) :: CALL CLEAR :: CALL COLOR(8,2,1) :: CALL SCREEN(15) :: DISPLAY AT(8,4):"NO FROGS LEFT TO PLAY AGAIN    PRESS Y/N"
620 CALL KEY(0,K,S) :: IF S=0 THEN 620 ELSE IF K=121 THEN RUN 200 ELSE STOP
630 CALL LOCATE(#1,170,100) :: CALL COLOR(#1,4) :: GOTO 540
640 FRG=FRG+1 :: DISPLAY AT(1,12):FRG :: K=K+1 :: IF K=12 THEN 790 ELSE SP=SP+1
650 CALL MOTION(#2,0,5*SP,#3,0,6*SP,#4,0,-4*SP,#6,0,6*SP,#7,0,-4*SP,#5,0,-6*SP,#8,0,-6*SP)
660 CALL MOTION(#10,0,SP,#13,0,3*SP,#14,0,2*SP,#18,0,2*SP,#19,0,2*SP,#19,0,2*SP,#20,0,SP,#21,0,3*SP)
670 FOR G=1 TO 100 :: NEXT G :: CALL LOCATE(#1,170,100) :: CALL COLOR(#1,4) :: GOTO 540
680 CALL POSITION(#1,H,J)
690 CALL KEY(1,K1,S1) :: IF S1=0 THEN CALL PATTERN(#1,128) :: GOTO 680 ELSE CALL PATTERN(#1,132) :: A=0
700 FL=0 :: H=H-16 :: CALL LOCATE(#1,H,J) :: IF H=1 THEN CALL COLOR(#1,1) :: GOTO 640
710 CALL COINC(ALL ,G) :: IF G<>0 THEN 720 ELSE IF H=81 THEN FL=0 :: GOTO 680 ELSE FL=0 :: GOTO 580
720 IF FL=1 THEN 680
730 IF J+3*SP>256 THEN FL=0 :: GOTO 580
740 ON(H-1)/16 GOTO 750,760,770,780,750
750 A=2*SP :: CALL LOCATE(#1,H,J+SP) :: CALL MOTION(#1,0,A) :: FL=1 :: CALL SOUND(10,3000,1) :: GOTO 680
760 A=SP :: CALL LOCATE(#1,H,J+SP) :: CALL MOTION(#1,0,A) :: FL=1 :: CALL SOUND(10,3000,1) :: GOTO 680
770 A=3*SP :: CALL LOCATE(#1,H,J+SP) :: CALL MOTION(#1,0,A) :: FL=1 :: CALL SOUND(10,3000,1) :: GOTO 680
780 A=2*SP :: CALL LOCATE(#1,H,J+SP) :: CALL MOTION(#1,0,A) :: FL=1 :: CALL SOUND(10,3000,1) :: GOTO 680
790 CALL CLEAR :: CALL CHARSET
800 DISPLAY AT(2,1):"YOU HAVE COMPLETED   ALL  THE  SCREENS"
810 DISPLAY AT(4,1):"NOW TRY AGAIN BUT DONT KILL ANY FROGS" :: RUN 200
